package javabook.ch06;

//Poly_Jv_6_10.java 
 class Poly_Jv_6_10 { 
	String str; 
	
	public Poly_Jv_6_10() { 
		str = "== Polymorphism 1 =="; 
	} 
	public void print_out() { 
		System.out.println("다형성 1: " + str); 
	} 
} 
	//Jv_6_10.java 
	public class Jv_6_10 extends Poly_Jv_6_10 {
	
		public Jv_6_10() { 
			str = "Polymorphism 2"; 
		} 
		
		public void print_out() { 
			System.out.println("다형성 2: " + str); 
		}
		
		public static void main(String[] args) { 
			
			Jv_6_10 p = new Jv_6_10(); 
			p.print_out(); 
			System.out.println();
			
			Poly_Jv_6_10 p1 = new Jv_6_10(); 
			p1.print_out(); 
			/*
			 * 27행: 다형성(Polymorphism) 
			   Poly_Jv_6_10 p1 = new Jv_6_10();에서는 new 키워드를 이용해 Jv_6_10() 객체를 생성하여 객체 변수 p1에 할당한다. 이 때 객체 변수 p1은 다시 Poly_Jv_6_10이라는 특성을 가진다. 
				28행: print_out() 메소드는 Poly_Jv_6_10 클래스와 Jv_6_10 클래스 양쪽에 있지만 여기서는 Jv_6_10() 클래스의 메소드가 실행된다. 

			 */
			
		 } 
} 
